[SVM] Do not update seg.base in realmode while obtaining the io
authorkaf24@firebug.cl.cam.ac.uk <kaf24@firebug.cl.cam.ac.uk>
Sat, 1 Apr 2006 09:40:54 +0000 (10:40 +0100)
committerkaf24@firebug.cl.cam.ac.uk <kaf24@firebug.cl.cam.ac.uk>
Sat, 1 Apr 2006 09:40:54 +0000 (10:40 +0100)
addr for ins/outs.

Signed-off-by: Tom Woller <thomas.woller@amd.com>
xen/arch/x86/hvm/svm/svm.c

index 77ba3f80890e94e4e8ac524e7766b8f620ecccaa..bc2e743df4fa9679e9ebb5457006550086129e06 100644 (file)
@@ -1163,16 +1163,12 @@ static unsigned int check_for_null_selector(struct vmcb_struct *vmcb,
             seg = vmcb->ds;
             break;
         default:
-            if (dir == IOREQ_READ)
+            if (dir == IOREQ_READ) /* IN/INS instruction? */
                 seg = vmcb->es;
             else
                 seg = vmcb->ds;
         }
         
-        /* In real Mode */
-        if (real)
-            seg.base = seg.sel << 4;
-
         if (base)
             *base = seg.base;